home *** CD-ROM | disk | FTP | other *** search
/ Over 1,000 Windows 95 Programs / Over 1000 Windows 95 Programs (Microforum) (Disc 1).iso / 1257 / library.cp_ / library.cp
Text File  |  1997-04-18  |  3KB  |  144 lines

  1. /* EasyCODE(C++) V5.1 01.03.1995 08:16:17
  2. Library Management: Main Program */
  3. /* EasyCODE O
  4. If=horizontal
  5. LevelNumbers=no
  6. LineNumbers=no
  7. ScreenFont=Arial,,100,9220,-13,0,400,0,0,0,0,0,0,3,2,1,34
  8. PrinterFont=Courier,,100,2,-42,0,400,0,0,0,0,0,0,2,1,2,49
  9. LastLevelId=20 */
  10.  
  11. /* EasyCODE ( 1
  12.    Main program */
  13. #include "libdat.h"
  14.  
  15. /* EasyCODE ( 16
  16.    Symbolic constants */
  17. #define ONE 1
  18. #define TWO 2
  19. #define THREE 3
  20. #define FOUR 4
  21. #define FIVE 5
  22. #define END 6
  23. /* EasyCODE ) */
  24.  
  25. /* EasyCODE ( 17
  26.    Global variables */
  27. int ClpBrdUsrNo;
  28. char ClpBrdUsrName[BUFFER_SIZE];
  29. BOOL ClpBrdUsrLock;
  30. user_item user[100];
  31. loan_item loan[100];
  32. int iUserSize;
  33. int iDebtLimit = 50;
  34. int iBookLimit = 5;
  35. int iFilUsr;
  36. int iMaxLoan;
  37. /* EasyCODE ) */
  38.  
  39. /* EasyCODE ( 18
  40.    Forward declarations */
  41. int MainMenu(void);
  42. void OpenUserFile(void);
  43. void InitUser(user_item&, int, char *, int);
  44.  
  45. extern BOOL UsrIdent(void);
  46. extern BOOL UsrLock(void);
  47. extern void Stacks(void);
  48. /* EasyCODE ) */
  49.  
  50. /* EasyCODE ( 3
  51.    main */
  52.  
  53. /* EasyCODE F */
  54. void main(void)
  55.    {
  56.    int bReturn;
  57.    /* EasyCODE - */
  58.    OpenUserFile();
  59.    if (UsrIdent())
  60.       {
  61.       if (!UsrLock())
  62.          {
  63.          do
  64.             {
  65.             switch (bReturn = MainMenu())
  66.                {
  67.                case ONE:
  68.                   printf("\nStack-room lending\n");
  69.                   Stacks();
  70.                   break;
  71.                case TWO:
  72.                   printf("\nOpen-access lending\n");
  73.                   break;
  74.                case THREE:
  75.                   printf("\nLoan renewal\n");
  76.                   break;
  77.                case FOUR:
  78.                   printf("\nReservation\n");
  79.                   break;
  80.                case FIVE:
  81.                   printf("\nReturn\n");
  82.                   break;
  83.                default:
  84.                   printf("\nExit !\n");
  85.                   break;
  86.                }
  87.             }
  88.          while (bReturn != END);
  89.          }
  90.       }
  91.    }
  92. /* EasyCODE ) */
  93.  
  94. /* EasyCODE ( 4
  95.    MainMenu */
  96.  
  97. /* EasyCODE F */
  98. int MainMenu()
  99.    {
  100. /* EasyCODE < */
  101.    int menuSelection;
  102.    
  103.    cout << "\n\n\n\tStack-room lending ..... 1\n";
  104.    cout << "\tOpen-access lending .... 2\n";
  105.    cout << "\tLoan renewal ........... 3\n";
  106.    cout << "\tReservation ............ 4\n";
  107.    cout << "\tReturn ................. 5\n\n";
  108.    cout << "\tEnd .................... 6\n";
  109.    
  110.    cout << "\n\n\n\t\tPlease make your choice: ";
  111.    cin >> menuSelection;
  112.    
  113.    return(menuSelection);
  114. /* EasyCODE > */
  115.    }
  116. /* EasyCODE ) */
  117.  
  118. /* EasyCODE ( 19
  119.    OpenUserFile */
  120.  
  121. /* EasyCODE F */
  122. void OpenUserFile(void)
  123.    {
  124.    InitUser(user[0], 1, "Thomas", 0);
  125.    InitUser(user[1], 2, "Michael", 0);
  126.    InitUser(user[2], 3, "Susan", 0);
  127.    InitUser(user[3], 4, "Harry", 550);
  128.    iUserSize = 4;
  129.    }
  130. /* EasyCODE ) */
  131.  
  132. /* EasyCODE ( 20
  133.    InitUser */
  134.  
  135. /* EasyCODE F */
  136. void InitUser(user_item& useritem, int number, char *name, int debts)
  137.    {
  138.    useritem.UserNo = number;
  139.    strcpy(useritem.UserName, name);
  140.    useritem.Debts = debts;
  141.    }
  142. /* EasyCODE ) */
  143. /* EasyCODE ) */
  144.